/*!
 * Intro.js v5.1.0
 * https://introjs.com
 *
 * Copyright (C) 2012-2022 Afshin Mehrabani (@afshinmeh).
 * https://introjs.com
 *
 * Date: Mon, 04 Apr 2022 21:20:28 GMT
 */
! function(t, e) {
    "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self)
        .introJs = e()
}(this, (function() {
    "use strict";

    function t(e) {
        return t = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(t) {
            return typeof t
        } : function(t) {
            return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
        }, t(e)
    }

    function e(t, e, n) {
        return e in t ? Object.defineProperty(t, e, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : t[e] = n, t
    }

    function n(t, e) {
        return function(t) {
            if (Array.isArray(t)) return t
        }(t) || function(t, e) {
            var n = null == t ? null : "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"];
            if (null == n) return;
            var i, o, r = [],
                a = !0,
                s = !1;
            try {
                for (n = n.call(t); !(a = (i = n.next())
                    .done) && (r.push(i.value), !e || r.length !== e); a = !0);
            } catch (t) {
                s = !0, o = t
            } finally {
                try {
                    a || null == n.return || n.return()
                } finally {
                    if (s) throw o
                }
            }
            return r
        }(t, e) || function(t, e) {
            if (!t) return;
            if ("string" == typeof t) return i(t, e);
            var n = Object.prototype.toString.call(t)
                .slice(8, -1);
            "Object" === n && t.constructor && (n = t.constructor.name);
            if ("Map" === n || "Set" === n) return Array.from(t);
            if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return i(t, e)
        }(t, e) || function() {
            throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
        }()
    }

    function i(t, e) {
        (null == e || e > t.length) && (e = t.length);
        for (var n = 0, i = new Array(e); n < e; n++) i[n] = t[n];
        return i
    }
    var o = function() {
        var t = {};
        return function(e) {
            var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "introjs-stamp";
            return t[n] = t[n] || 0, void 0 === e[n] && (e[n] = t[n]++), e[n]
        }
    }();

    function r(t, e, n) {
        if (t)
            for (var i = 0, o = t.length; i < o; i++) e(t[i], i);
        "function" == typeof n && n()
    }
    var a = new function() {
            var t = "introjs_event";
            this._id = function(t, e, n, i) {
                return e + o(n) + (i ? "_".concat(o(i)) : "")
            }, this.on = function(e, n, i, o, r) {
                var a = this._id.apply(this, arguments),
                    s = function(t) {
                        return i.call(o || e, t || window.event)
                    };
                "addEventListener" in e ? e.addEventListener(n, s, r) : "attachEvent" in e && e.attachEvent("on".concat(n), s), e[t] = e[t] || {}, e[t][a] = s
            }, this.off = function(e, n, i, o, r) {
                var a = this._id.apply(this, arguments),
                    s = e[t] && e[t][a];
                s && ("removeEventListener" in e ? e.removeEventListener(n, s, r) : "detachEvent" in e && e.detachEvent("on".concat(n), s), e[t][a] = null)
            }
        },
        s = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : {};

    function l(t, e) {
        return t(e = {
            exports: {}
        }, e.exports), e.exports
    }
    var c, u, h = function(t) {
            return t && t.Math == Math && t
        },
        f = h("object" == typeof globalThis && globalThis) || h("object" == typeof window && window) || h("object" == typeof self && self) || h("object" == typeof s && s) || function() {
            return this
        }() || Function("return this")(),
        p = function(t) {
            try {
                return !!t()
            } catch (t) {
                return !0
            }
        },
        d = !p((function() {
            return 7 != Object.defineProperty({}, 1, {
                get: function() {
                    return 7
                }
            })[1]
        })),
        g = !p((function() {
            var t = function() {}.bind();
            return "function" != typeof t || t.hasOwnProperty("prototype")
        })),
        v = Function.prototype.call,
        m = g ? v.bind(v) : function() {
            return v.apply(v, arguments)
        },
        b = {}.propertyIsEnumerable,
        y = Object.getOwnPropertyDescriptor,
        w = {
            f: y && !b.call({
                1: 2
            }, 1) ? function(t) {
                var e = y(this, t);
                return !!e && e.enumerable
            } : b
        },
        _ = function(t, e) {
            return {
                enumerable: !(1 & t),
                configurable: !(2 & t),
                writable: !(4 & t),
                value: e
            }
        },
        S = Function.prototype,
        x = S.bind,
        j = S.call,
        C = g && x.bind(j, j),
        A = g ? function(t) {
            return t && C(t)
        } : function(t) {
            return t && function() {
                return j.apply(t, arguments)
            }
        },
        k = A({}.toString),
        E = A("".slice),
        T = function(t) {
            return E(k(t), 8, -1)
        },
        I = f.Object,
        N = A("".split),
        L = p((function() {
            return !I("z")
                .propertyIsEnumerable(0)
        })) ? function(t) {
            return "String" == T(t) ? N(t, "") : I(t)
        } : I,
        O = f.TypeError,
        P = function(t) {
            if (null == t) throw O("Can't call method on " + t);
            return t
        },
        R = function(t) {
            return L(P(t))
        },
        M = function(t) {
            return "function" == typeof t
        },
        q = function(t) {
            return "object" == typeof t ? null !== t : M(t)
        },
        B = function(t) {
            return M(t) ? t : void 0
        },
        H = function(t, e) {
            return arguments.length < 2 ? B(f[t]) : f[t] && f[t][e]
        },
        D = A({}.isPrototypeOf),
        F = H("navigator", "userAgent") || "",
        $ = f.process,
        G = f.Deno,
        V = $ && $.versions || G && G.version,
        z = V && V.v8;
    z && (u = (c = z.split("."))[0] > 0 && c[0] < 4 ? 1 : +(c[0] + c[1])), !u && F && (!(c = F.match(/Edge\/(\d+)/)) || c[1] >= 74) && (c = F.match(/Chrome\/(\d+)/)) && (u = +c[1]);
    var U = u,
        W = !!Object.getOwnPropertySymbols && !p((function() {
            var t = Symbol();
            return !String(t) || !(Object(t) instanceof Symbol) || !Symbol.sham && U && U < 41
        })),
        K = W && !Symbol.sham && "symbol" == typeof Symbol.iterator,
        Y = f.Object,
        X = K ? function(t) {
            return "symbol" == typeof t
        } : function(t) {
            var e = H("Symbol");
            return M(e) && D(e.prototype, Y(t))
        },
        J = f.String,
        Q = function(t) {
            try {
                return J(t)
            } catch (t) {
                return "Object"
            }
        },
        Z = f.TypeError,
        tt = function(t) {
            if (M(t)) return t;
            throw Z(Q(t) + " is not a function")
        },
        et = function(t, e) {
            var n = t[e];
            return null == n ? void 0 : tt(n)
        },
        nt = f.TypeError,
        it = Object.defineProperty,
        ot = function(t, e) {
            try {
                it(f, t, {
                    value: e,
                    configurable: !0,
                    writable: !0
                })
            } catch (n) {
                f[t] = e
            }
            return e
        },
        rt = "__core-js_shared__",
        at = f[rt] || ot(rt, {}),
        st = l((function(t) {
            (t.exports = function(t, e) {
                return at[t] || (at[t] = void 0 !== e ? e : {})
            })("versions", [])
                .push({
                    version: "3.21.1",
                    mode: "global",
                    copyright: "© 2014-2022 Denis Pushkarev (zloirock.ru)",
                    license: "https://github.com/zloirock/core-js/blob/v3.21.1/LICENSE",
                    source: "https://github.com/zloirock/core-js"
                })
        })),
        lt = f.Object,
        ct = function(t) {
            return lt(P(t))
        },
        ut = A({}.hasOwnProperty),
        ht = Object.hasOwn || function(t, e) {
            return ut(ct(t), e)
        },
        ft = 0,
        pt = Math.random(),
        dt = A(1..toString),
        gt = function(t) {
            return "Symbol(" + (void 0 === t ? "" : t) + ")_" + dt(++ft + pt, 36)
        },
        vt = st("wks"),
        mt = f.Symbol,
        bt = mt && mt.for,
        yt = K ? mt : mt && mt.withoutSetter || gt,
        wt = function(t) {
            if (!ht(vt, t) || !W && "string" != typeof vt[t]) {
                var e = "Symbol." + t;
                W && ht(mt, t) ? vt[t] = mt[t] : vt[t] = K && bt ? bt(e) : yt(e)
            }
            return vt[t]
        },
        _t = f.TypeError,
        St = wt("toPrimitive"),
        xt = function(t, e) {
            if (!q(t) || X(t)) return t;
            var n, i = et(t, St);
            if (i) {
                if (void 0 === e && (e = "default"), n = m(i, t, e), !q(n) || X(n)) return n;
                throw _t("Can't convert object to primitive value")
            }
            return void 0 === e && (e = "number"),
                function(t, e) {
                    var n, i;
                    if ("string" === e && M(n = t.toString) && !q(i = m(n, t))) return i;
                    if (M(n = t.valueOf) && !q(i = m(n, t))) return i;
                    if ("string" !== e && M(n = t.toString) && !q(i = m(n, t))) return i;
                    throw nt("Can't convert object to primitive value")
                }(t, e)
        },
        jt = function(t) {
            var e = xt(t, "string");
            return X(e) ? e : e + ""
        },
        Ct = f.document,
        At = q(Ct) && q(Ct.createElement),
        kt = function(t) {
            return At ? Ct.createElement(t) : {}
        },
        Et = !d && !p((function() {
            return 7 != Object.defineProperty(kt("div"), "a", {
                get: function() {
                    return 7
                }
            })
                .a
        })),
        Tt = Object.getOwnPropertyDescriptor,
        It = {
            f: d ? Tt : function(t, e) {
                if (t = R(t), e = jt(e), Et) try {
                    return Tt(t, e)
                } catch (t) {}
                if (ht(t, e)) return _(!m(w.f, t, e), t[e])
            }
        },
        Nt = d && p((function() {
            return 42 != Object.defineProperty((function() {}), "prototype", {
                value: 42,
                writable: !1
            })
                .prototype
        })),
        Lt = f.String,
        Ot = f.TypeError,
        Pt = function(t) {
            if (q(t)) return t;
            throw Ot(Lt(t) + " is not an object")
        },
        Rt = f.TypeError,
        Mt = Object.defineProperty,
        qt = Object.getOwnPropertyDescriptor,
        Bt = "enumerable",
        Ht = "configurable",
        Dt = "writable",
        Ft = {
            f: d ? Nt ? function(t, e, n) {
                if (Pt(t), e = jt(e), Pt(n), "function" == typeof t && "prototype" === e && "value" in n && Dt in n && !n.writable) {
                    var i = qt(t, e);
                    i && i.writable && (t[e] = n.value, n = {
                        configurable: Ht in n ? n.configurable : i.configurable,
                        enumerable: Bt in n ? n.enumerable : i.enumerable,
                        writable: !1
                    })
                }
                return Mt(t, e, n)
            } : Mt : function(t, e, n) {
                if (Pt(t), e = jt(e), Pt(n), Et) try {
                    return Mt(t, e, n)
                } catch (t) {}
                if ("get" in n || "set" in n) throw Rt("Accessors not supported");
                return "value" in n && (t[e] = n.value), t
            }
        },
        $t = d ? function(t, e, n) {
            return Ft.f(t, e, _(1, n))
        } : function(t, e, n) {
            return t[e] = n, t
        },
        Gt = A(Function.toString);
    M(at.inspectSource) || (at.inspectSource = function(t) {
        return Gt(t)
    });
    var Vt, zt, Ut, Wt = at.inspectSource,
        Kt = f.WeakMap,
        Yt = M(Kt) && /native code/.test(Wt(Kt)),
        Xt = st("keys"),
        Jt = function(t) {
            return Xt[t] || (Xt[t] = gt(t))
        },
        Qt = {},
        Zt = "Object already initialized",
        te = f.TypeError,
        ee = f.WeakMap;
    if (Yt || at.state) {
        var ne = at.state || (at.state = new ee),
            ie = A(ne.get),
            oe = A(ne.has),
            re = A(ne.set);
        Vt = function(t, e) {
            if (oe(ne, t)) throw new te(Zt);
            return e.facade = t, re(ne, t, e), e
        }, zt = function(t) {
            return ie(ne, t) || {}
        }, Ut = function(t) {
            return oe(ne, t)
        }
    } else {
        var ae = Jt("state");
        Qt[ae] = !0, Vt = function(t, e) {
            if (ht(t, ae)) throw new te(Zt);
            return e.facade = t, $t(t, ae, e), e
        }, zt = function(t) {
            return ht(t, ae) ? t[ae] : {}
        }, Ut = function(t) {
            return ht(t, ae)
        }
    }
    var se = {
            set: Vt,
            get: zt,
            has: Ut,
            enforce: function(t) {
                return Ut(t) ? zt(t) : Vt(t, {})
            },
            getterFor: function(t) {
                return function(e) {
                    var n;
                    if (!q(e) || (n = zt(e))
                        .type !== t) throw te("Incompatible receiver, " + t + " required");
                    return n
                }
            }
        },
        le = Function.prototype,
        ce = d && Object.getOwnPropertyDescriptor,
        ue = ht(le, "name"),
        he = {
            EXISTS: ue,
            PROPER: ue && "something" === function() {}.name,
            CONFIGURABLE: ue && (!d || d && ce(le, "name")
                .configurable)
        },
        fe = l((function(t) {
            var e = he.CONFIGURABLE,
                n = se.get,
                i = se.enforce,
                o = String(String)
                    .split("String");
            (t.exports = function(t, n, r, a) {
                var s, l = !!a && !!a.unsafe,
                    c = !!a && !!a.enumerable,
                    u = !!a && !!a.noTargetGet,
                    h = a && void 0 !== a.name ? a.name : n;
                M(r) && ("Symbol(" === String(h)
                    .slice(0, 7) && (h = "[" + String(h)
                    .replace(/^Symbol\(([^)]*)\)/, "$1") + "]"), (!ht(r, "name") || e && r.name !== h) && $t(r, "name", h), (s = i(r))
                    .source || (s.source = o.join("string" == typeof h ? h : ""))), t !== f ? (l ? !u && t[n] && (c = !0) : delete t[n], c ? t[n] = r : $t(t, n, r)) : c ? t[n] = r : ot(n, r)
            })(Function.prototype, "toString", (function() {
                return M(this) && n(this)
                    .source || Wt(this)
            }))
        })),
        pe = Math.ceil,
        de = Math.floor,
        ge = function(t) {
            var e = +t;
            return e != e || 0 === e ? 0 : (e > 0 ? de : pe)(e)
        },
        ve = Math.max,
        me = Math.min,
        be = function(t, e) {
            var n = ge(t);
            return n < 0 ? ve(n + e, 0) : me(n, e)
        },
        ye = Math.min,
        we = function(t) {
            return t > 0 ? ye(ge(t), 9007199254740991) : 0
        },
        _e = function(t) {
            return we(t.length)
        },
        Se = function(t) {
            return function(e, n, i) {
                var o, r = R(e),
                    a = _e(r),
                    s = be(i, a);
                if (t && n != n) {
                    for (; a > s;)
                        if ((o = r[s++]) != o) return !0
                } else
                    for (; a > s; s++)
                        if ((t || s in r) && r[s] === n) return t || s || 0;
                return !t && -1
            }
        },
        xe = {
            includes: Se(!0),
            indexOf: Se(!1)
        },
        je = xe.indexOf,
        Ce = A([].push),
        Ae = function(t, e) {
            var n, i = R(t),
                o = 0,
                r = [];
            for (n in i) !ht(Qt, n) && ht(i, n) && Ce(r, n);
            for (; e.length > o;) ht(i, n = e[o++]) && (~je(r, n) || Ce(r, n));
            return r
        },
        ke = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"],
        Ee = ke.concat("length", "prototype"),
        Te = {
            f: Object.getOwnPropertyNames || function(t) {
                return Ae(t, Ee)
            }
        },
        Ie = {
            f: Object.getOwnPropertySymbols
        },
        Ne = A([].concat),
        Le = H("Reflect", "ownKeys") || function(t) {
            var e = Te.f(Pt(t)),
                n = Ie.f;
            return n ? Ne(e, n(t)) : e
        },
        Oe = function(t, e, n) {
            for (var i = Le(e), o = Ft.f, r = It.f, a = 0; a < i.length; a++) {
                var s = i[a];
                ht(t, s) || n && ht(n, s) || o(t, s, r(e, s))
            }
        },
        Pe = /#|\.prototype\./,
        Re = function(t, e) {
            var n = qe[Me(t)];
            return n == He || n != Be && (M(e) ? p(e) : !!e)
        },
        Me = Re.normalize = function(t) {
            return String(t)
                .replace(Pe, ".")
                .toLowerCase()
        },
        qe = Re.data = {},
        Be = Re.NATIVE = "N",
        He = Re.POLYFILL = "P",
        De = Re,
        Fe = It.f,
        $e = function(t, e) {
            var n, i, o, r, a, s = t.target,
                l = t.global,
                c = t.stat;
            if (n = l ? f : c ? f[s] || ot(s, {}) : (f[s] || {})
                .prototype)
                for (i in e) {
                    if (r = e[i], o = t.noTargetGet ? (a = Fe(n, i)) && a.value : n[i], !De(l ? i : s + (c ? "." : "#") + i, t.forced) && void 0 !== o) {
                        if (typeof r == typeof o) continue;
                        Oe(r, o)
                    }(t.sham || o && o.sham) && $t(r, "sham", !0), fe(n, i, r, t)
                }
        },
        Ge = {};
    Ge[wt("toStringTag")] = "z";
    var Ve, ze = "[object z]" === String(Ge),
        Ue = wt("toStringTag"),
        We = f.Object,
        Ke = "Arguments" == T(function() {
            return arguments
        }()),
        Ye = ze ? T : function(t) {
            var e, n, i;
            return void 0 === t ? "Undefined" : null === t ? "Null" : "string" == typeof(n = function(t, e) {
                try {
                    return t[e]
                } catch (t) {}
            }(e = We(t), Ue)) ? n : Ke ? T(e) : "Object" == (i = T(e)) && M(e.callee) ? "Arguments" : i
        },
        Xe = f.String,
        Je = function(t) {
            if ("Symbol" === Ye(t)) throw TypeError("Cannot convert a Symbol value to a string");
            return Xe(t)
        },
        Qe = function() {
            var t = Pt(this),
                e = "";
            return t.global && (e += "g"), t.ignoreCase && (e += "i"), t.multiline && (e += "m"), t.dotAll && (e += "s"), t.unicode && (e += "u"), t.sticky && (e += "y"), e
        },
        Ze = f.RegExp,
        tn = p((function() {
            var t = Ze("a", "y");
            return t.lastIndex = 2, null != t.exec("abcd")
        })),
        en = tn || p((function() {
            return !Ze("a", "y")
                .sticky
        })),
        nn = {
            BROKEN_CARET: tn || p((function() {
                var t = Ze("^r", "gy");
                return t.lastIndex = 2, null != t.exec("str")
            })),
            MISSED_STICKY: en,
            UNSUPPORTED_Y: tn
        },
        on = Object.keys || function(t) {
            return Ae(t, ke)
        },
        rn = d && !Nt ? Object.defineProperties : function(t, e) {
            Pt(t);
            for (var n, i = R(e), o = on(e), r = o.length, a = 0; r > a;) Ft.f(t, n = o[a++], i[n]);
            return t
        },
        an = {
            f: rn
        },
        sn = H("document", "documentElement"),
        ln = Jt("IE_PROTO"),
        cn = function() {},
        un = function(t) {
            return "<script>" + t + "</" + "script>"
        },
        hn = function(t) {
            t.write(un("")), t.close();
            var e = t.parentWindow.Object;
            return t = null, e
        },
        fn = function() {
            try {
                Ve = new ActiveXObject("htmlfile")
            } catch (t) {}
            var t, e;
            fn = "undefined" != typeof document ? document.domain && Ve ? hn(Ve) : ((e = kt("iframe"))
                .style.display = "none", sn.appendChild(e), e.src = String("javascript:"), (t = e.contentWindow.document)
                .open(), t.write(un("document.F=Object")), t.close(), t.F) : hn(Ve);
            for (var n = ke.length; n--;) delete fn.prototype[ke[n]];
            return fn()
        };
    Qt[ln] = !0;
    var pn, dn, gn = Object.create || function(t, e) {
            var n;
            return null !== t ? (cn.prototype = Pt(t), n = new cn, cn.prototype = null, n[ln] = t) : n = fn(), void 0 === e ? n : an.f(n, e)
        },
        vn = f.RegExp,
        mn = p((function() {
            var t = vn(".", "s");
            return !(t.dotAll && t.exec("\n") && "s" === t.flags)
        })),
        bn = f.RegExp,
        yn = p((function() {
            var t = bn("(?<a>b)", "g");
            return "b" !== t.exec("b")
                .groups.a || "bc" !== "b".replace(t, "$<a>c")
        })),
        wn = se.get,
        _n = st("native-string-replace", String.prototype.replace),
        Sn = RegExp.prototype.exec,
        xn = Sn,
        jn = A("".charAt),
        Cn = A("".indexOf),
        An = A("".replace),
        kn = A("".slice),
        En = (dn = /b*/g, m(Sn, pn = /a/, "a"), m(Sn, dn, "a"), 0 !== pn.lastIndex || 0 !== dn.lastIndex),
        Tn = nn.BROKEN_CARET,
        In = void 0 !== /()??/.exec("")[1];
    (En || In || Tn || mn || yn) && (xn = function(t) {
        var e, n, i, o, r, a, s, l = this,
            c = wn(l),
            u = Je(t),
            h = c.raw;
        if (h) return h.lastIndex = l.lastIndex, e = m(xn, h, u), l.lastIndex = h.lastIndex, e;
        var f = c.groups,
            p = Tn && l.sticky,
            d = m(Qe, l),
            g = l.source,
            v = 0,
            b = u;
        if (p && (d = An(d, "y", ""), -1 === Cn(d, "g") && (d += "g"), b = kn(u, l.lastIndex), l.lastIndex > 0 && (!l.multiline || l.multiline && "\n" !== jn(u, l.lastIndex - 1)) && (g = "(?: " + g + ")", b = " " + b, v++), n = new RegExp("^(?:" + g + ")", d)), In && (n = new RegExp("^" + g + "$(?!\\s)", d)), En && (i = l.lastIndex), o = m(Sn, p ? n : l, b), p ? o ? (o.input = kn(o.input, v), o[0] = kn(o[0], v), o.index = l.lastIndex, l.lastIndex += o[0].length) : l.lastIndex = 0 : En && o && (l.lastIndex = l.global ? o.index + o[0].length : i), In && o && o.length > 1 && m(_n, o[0], n, (function() {
            for (r = 1; r < arguments.length - 2; r++) void 0 === arguments[r] && (o[r] = void 0)
        })), o && f)
            for (o.groups = a = gn(null), r = 0; r < f.length; r++) a[(s = f[r])[0]] = o[s[1]];
        return o
    });
    var Nn = xn;
    $e({
        target: "RegExp",
        proto: !0,
        forced: /./.exec !== Nn
    }, {
        exec: Nn
    });
    var Ln = wt("species"),
        On = RegExp.prototype,
        Pn = function(t, e, n, i) {
            var o = wt(t),
                r = !p((function() {
                    var e = {};
                    return e[o] = function() {
                        return 7
                    }, 7 != "" [t](e)
                })),
                a = r && !p((function() {
                    var e = !1,
                        n = /a/;
                    return "split" === t && ((n = {})
                        .constructor = {}, n.constructor[Ln] = function() {
                        return n
                    }, n.flags = "", n[o] = /./ [o]), n.exec = function() {
                        return e = !0, null
                    }, n[o](""), !e
                }));
            if (!r || !a || n) {
                var s = A(/./ [o]),
                    l = e(o, "" [t], (function(t, e, n, i, o) {
                        var a = A(t),
                            l = e.exec;
                        return l === Nn || l === On.exec ? r && !o ? {
                            done: !0,
                            value: s(e, n, i)
                        } : {
                            done: !0,
                            value: a(n, e, i)
                        } : {
                            done: !1
                        }
                    }));
                fe(String.prototype, t, l[0]), fe(On, o, l[1])
            }
            i && $t(On[o], "sham", !0)
        },
        Rn = A("".charAt),
        Mn = A("".charCodeAt),
        qn = A("".slice),
        Bn = function(t) {
            return function(e, n) {
                var i, o, r = Je(P(e)),
                    a = ge(n),
                    s = r.length;
                return a < 0 || a >= s ? t ? "" : void 0 : (i = Mn(r, a)) < 55296 || i > 56319 || a + 1 === s || (o = Mn(r, a + 1)) < 56320 || o > 57343 ? t ? Rn(r, a) : i : t ? qn(r, a, a + 2) : o - 56320 + (i - 55296 << 10) + 65536
            }
        },
        Hn = {
            codeAt: Bn(!1),
            charAt: Bn(!0)
        }.charAt,
        Dn = function(t, e, n) {
            return e + (n ? Hn(t, e)
                .length : 1)
        },
        Fn = f.TypeError,
        $n = function(t, e) {
            var n = t.exec;
            if (M(n)) {
                var i = m(n, t, e);
                return null !== i && Pt(i), i
            }
            if ("RegExp" === T(t)) return m(Nn, t, e);
            throw Fn("RegExp#exec called on incompatible receiver")
        };
    Pn("match", (function(t, e, n) {
        return [function(e) {
            var n = P(this),
                i = null == e ? void 0 : et(e, t);
            return i ? m(i, e, n) : new RegExp(e)[t](Je(n))
        }, function(t) {
            var i = Pt(this),
                o = Je(t),
                r = n(e, i, o);
            if (r.done) return r.value;
            if (!i.global) return $n(i, o);
            var a = i.unicode;
            i.lastIndex = 0;
            for (var s, l = [], c = 0; null !== (s = $n(i, o));) {
                var u = Je(s[0]);
                l[c] = u, "" === u && (i.lastIndex = Dn(o, we(i.lastIndex), a)), c++
            }
            return 0 === c ? null : l
        }]
    }));
    var Gn = Array.isArray || function(t) {
            return "Array" == T(t)
        },
        Vn = function(t, e, n) {
            var i = jt(e);
            i in t ? Ft.f(t, i, _(0, n)) : t[i] = n
        },
        zn = function() {},
        Un = [],
        Wn = H("Reflect", "construct"),
        Kn = /^\s*(?:class|function)\b/,
        Yn = A(Kn.exec),
        Xn = !Kn.exec(zn),
        Jn = function(t) {
            if (!M(t)) return !1;
            try {
                return Wn(zn, Un, t), !0
            } catch (t) {
                return !1
            }
        },
        Qn = function(t) {
            if (!M(t)) return !1;
            switch (Ye(t)) {
                case "AsyncFunction":
                case "GeneratorFunction":
                case "AsyncGeneratorFunction":
                    return !1
            }
            try {
                return Xn || !!Yn(Kn, Wt(t))
            } catch (t) {
                return !0
            }
        };
    Qn.sham = !0;
    var Zn = !Wn || p((function() {
            var t;
            return Jn(Jn.call) || !Jn(Object) || !Jn((function() {
                t = !0
            })) || t
        })) ? Qn : Jn,
        ti = wt("species"),
        ei = f.Array,
        ni = function(t, e) {
            return new(function(t) {
                var e;
                return Gn(t) && (e = t.constructor, (Zn(e) && (e === ei || Gn(e.prototype)) || q(e) && null === (e = e[ti])) && (e = void 0)), void 0 === e ? ei : e
            }(t))(0 === e ? 0 : e)
        },
        ii = wt("species"),
        oi = function(t) {
            return U >= 51 || !p((function() {
                var e = [];
                return (e.constructor = {})[ii] = function() {
                    return {
                        foo: 1
                    }
                }, 1 !== e[t](Boolean)
                    .foo
            }))
        },
        ri = wt("isConcatSpreadable"),
        ai = 9007199254740991,
        si = "Maximum allowed index exceeded",
        li = f.TypeError,
        ci = U >= 51 || !p((function() {
            var t = [];
            return t[ri] = !1, t.concat()[0] !== t
        })),
        ui = oi("concat"),
        hi = function(t) {
            if (!q(t)) return !1;
            var e = t[ri];
            return void 0 !== e ? !!e : Gn(t)
        };
    $e({
        target: "Array",
        proto: !0,
        forced: !ci || !ui
    }, {
        concat: function(t) {
            var e, n, i, o, r, a = ct(this),
                s = ni(a, 0),
                l = 0;
            for (e = -1, i = arguments.length; e < i; e++)
                if (hi(r = -1 === e ? a : arguments[e])) {
                    if (l + (o = _e(r)) > ai) throw li(si);
                    for (n = 0; n < o; n++, l++) n in r && Vn(s, l, r[n])
                } else {
                    if (l >= ai) throw li(si);
                    Vn(s, l++, r)
                } return s.length = l, s
        }
    });
    var fi = ze ? {}.toString : function() {
        return "[object " + Ye(this) + "]"
    };
    ze || fe(Object.prototype, "toString", fi, {
        unsafe: !0
    });
    var pi = he.PROPER,
        di = "toString",
        gi = RegExp.prototype,
        vi = gi.toString,
        mi = A(Qe),
        bi = p((function() {
            return "/a/b" != vi.call({
                source: "a",
                flags: "b"
            })
        })),
        yi = pi && vi.name != di;
    (bi || yi) && fe(RegExp.prototype, di, (function() {
        var t = Pt(this),
            e = Je(t.source),
            n = t.flags;
        return "/" + e + "/" + Je(void 0 === n && D(gi, t) && !("flags" in gi) ? mi(t) : n)
    }), {
        unsafe: !0
    });
    var wi = Function.prototype,
        _i = wi.apply,
        Si = wi.call,
        xi = "object" == typeof Reflect && Reflect.apply || (g ? Si.bind(_i) : function() {
            return Si.apply(_i, arguments)
        }),
        ji = wt("match"),
        Ci = function(t) {
            var e;
            return q(t) && (void 0 !== (e = t[ji]) ? !!e : "RegExp" == T(t))
        },
        Ai = f.TypeError,
        ki = wt("species"),
        Ei = function(t, e) {
            var n, i = Pt(t)
                .constructor;
            return void 0 === i || null == (n = Pt(i)[ki]) ? e : function(t) {
                if (Zn(t)) return t;
                throw Ai(Q(t) + " is not a constructor")
            }(n)
        },
        Ti = f.Array,
        Ii = Math.max,
        Ni = function(t, e, n) {
            for (var i = _e(t), o = be(e, i), r = be(void 0 === n ? i : n, i), a = Ti(Ii(r - o, 0)), s = 0; o < r; o++, s++) Vn(a, s, t[o]);
            return a.length = s, a
        },
        Li = nn.UNSUPPORTED_Y,
        Oi = 4294967295,
        Pi = Math.min,
        Ri = [].push,
        Mi = A(/./.exec),
        qi = A(Ri),
        Bi = A("".slice),
        Hi = !p((function() {
            var t = /(?:)/,
                e = t.exec;
            t.exec = function() {
                return e.apply(this, arguments)
            };
            var n = "ab".split(t);
            return 2 !== n.length || "a" !== n[0] || "b" !== n[1]
        }));

    function Di(t, e) {
        if (t instanceof SVGElement) {
            var n = t.getAttribute("class") || "";
            n.match(e) || t.setAttribute("class", "".concat(n, " ")
                .concat(e))
        } else {
            if (void 0 !== t.classList) r(e.split(" "), (function(e) {
                t.classList.add(e)
            }));
            else t.className.match(e) || (t.className += " ".concat(e))
        }
    }

    function Fi(t, e) {
        var n = "";
        return t.currentStyle ? n = t.currentStyle[e] : document.defaultView && document.defaultView.getComputedStyle && (n = document.defaultView.getComputedStyle(t, null)
            .getPropertyValue(e)), n && n.toLowerCase ? n.toLowerCase() : n
    }

    function $i(t) {
        var e = t.element;
        if (this._options.scrollToElement) {
            var n = function(t) {
                var e = window.getComputedStyle(t),
                    n = "absolute" === e.position,
                    i = /(auto|scroll)/;
                if ("fixed" === e.position) return document.body;
                for (var o = t; o = o.parentElement;)
                    if (e = window.getComputedStyle(o), (!n || "static" !== e.position) && i.test(e.overflow + e.overflowY + e.overflowX)) return o;
                return document.body
            }(e);
            n !== document.body && (n.scrollTop = e.offsetTop - n.offsetTop)
        }
    }

    function Gi() {
        if (void 0 !== window.innerWidth) return {
            width: window.innerWidth,
            height: window.innerHeight
        };
        var t = document.documentElement;
        return {
            width: t.clientWidth,
            height: t.clientHeight
        }
    }

    function Vi(t, e, n) {
        var i, o = e.element;
        if ("off" !== t && (this._options.scrollToElement && (i = "tooltip" === t ? n.getBoundingClientRect() : o.getBoundingClientRect(), ! function(t) {
            var e = t.getBoundingClientRect();
            return e.top >= 0 && e.left >= 0 && e.bottom + 80 <= window.innerHeight && e.right <= window.innerWidth
        }(o)))) {
            var r = Gi()
                .height;
            i.bottom - (i.bottom - i.top) < 0 || o.clientHeight > r ? window.scrollBy(0, i.top - (r / 2 - i.height / 2) - this._options.scrollPadding) : window.scrollBy(0, i.top - (r / 2 - i.height / 2) + this._options.scrollPadding)
        }
    }

    function zi(t) {
        t.setAttribute("role", "button"), t.tabIndex = 0
    }
    Pn("split", (function(t, e, n) {
        var i;
        return i = "c" == "abbc".split(/(b)*/)[1] || 4 != "test".split(/(?:)/, -1)
            .length || 2 != "ab".split(/(?:ab)*/)
            .length || 4 != ".".split(/(.?)(.?)/)
            .length || ".".split(/()()/)
            .length > 1 || "".split(/.?/)
            .length ? function(t, n) {
            var i = Je(P(this)),
                o = void 0 === n ? Oi : n >>> 0;
            if (0 === o) return [];
            if (void 0 === t) return [i];
            if (!Ci(t)) return m(e, i, t, o);
            for (var r, a, s, l = [], c = (t.ignoreCase ? "i" : "") + (t.multiline ? "m" : "") + (t.unicode ? "u" : "") + (t.sticky ? "y" : ""), u = 0, h = new RegExp(t.source, c + "g");
                 (r = m(Nn, h, i)) && !((a = h.lastIndex) > u && (qi(l, Bi(i, u, r.index)), r.length > 1 && r.index < i.length && xi(Ri, l, Ni(r, 1)), s = r[0].length, u = a, l.length >= o));) h.lastIndex === r.index && h.lastIndex++;
            return u === i.length ? !s && Mi(h, "") || qi(l, "") : qi(l, Bi(i, u)), l.length > o ? Ni(l, 0, o) : l
        } : "0".split(void 0, 0)
            .length ? function(t, n) {
            return void 0 === t && 0 === n ? [] : m(e, this, t, n)
        } : e, [function(e, n) {
            var o = P(this),
                r = null == e ? void 0 : et(e, t);
            return r ? m(r, e, o, n) : m(i, Je(o), e, n)
        }, function(t, o) {
            var r = Pt(this),
                a = Je(t),
                s = n(i, r, a, o, i !== e);
            if (s.done) return s.value;
            var l = Ei(r, RegExp),
                c = r.unicode,
                u = (r.ignoreCase ? "i" : "") + (r.multiline ? "m" : "") + (r.unicode ? "u" : "") + (Li ? "g" : "y"),
                h = new l(Li ? "^(?:" + r.source + ")" : r, u),
                f = void 0 === o ? Oi : o >>> 0;
            if (0 === f) return [];
            if (0 === a.length) return null === $n(h, a) ? [a] : [];
            for (var p = 0, d = 0, g = []; d < a.length;) {
                h.lastIndex = Li ? 0 : d;
                var v, m = $n(h, Li ? Bi(a, d) : a);
                if (null === m || (v = Pi(we(h.lastIndex + (Li ? d : 0)), a.length)) === p) d = Dn(a, d, c);
                else {
                    if (qi(g, Bi(a, p, d)), g.length === f) return g;
                    for (var b = 1; b <= m.length - 1; b++)
                        if (qi(g, m[b]), g.length === f) return g;
                    d = p = v
                }
            }
            return qi(g, Bi(a, p)), g
        }]
    }), !Hi, Li);
    var Ui = Object.assign,
        Wi = Object.defineProperty,
        Ki = A([].concat),
        Yi = !Ui || p((function() {
            if (d && 1 !== Ui({
                b: 1
            }, Ui(Wi({}, "a", {
                enumerable: !0,
                get: function() {
                    Wi(this, "b", {
                        value: 3,
                        enumerable: !1
                    })
                }
            }), {
                b: 2
            }))
                .b) return !0;
            var t = {},
                e = {},
                n = Symbol(),
                i = "abcdefghijklmnopqrst";
            return t[n] = 7, i.split("")
                .forEach((function(t) {
                    e[t] = t
                })), 7 != Ui({}, t)[n] || on(Ui({}, e))
                .join("") != i
        })) ? function(t, e) {
            for (var n = ct(t), i = arguments.length, o = 1, r = Ie.f, a = w.f; i > o;)
                for (var s, l = L(arguments[o++]), c = r ? Ki(on(l), r(l)) : on(l), u = c.length, h = 0; u > h;) s = c[h++], d && !m(a, l, s) || (n[s] = l[s]);
            return n
        } : Ui;

    function Xi(t) {
        var e = t.parentNode;
        return !(!e || "HTML" === e.nodeName) && ("fixed" === Fi(t, "position") || Xi(e))
    }

    function Ji(t, e) {
        var n = document.body,
            i = document.documentElement,
            o = window.pageYOffset || i.scrollTop || n.scrollTop,
            r = window.pageXOffset || i.scrollLeft || n.scrollLeft;
        e = e || n;
        var a = t.getBoundingClientRect(),
            s = e.getBoundingClientRect(),
            l = Fi(e, "position"),
            c = {
                width: a.width,
                height: a.height
            };
        return "body" !== e.tagName.toLowerCase() && "relative" === l || "sticky" === l ? Object.assign(c, {
            top: a.top - s.top,
            left: a.left - s.left
        }) : Xi(t) ? Object.assign(c, {
            top: a.top,
            left: a.left
        }) : Object.assign(c, {
            top: a.top + o,
            left: a.left + r
        })
    }
    $e({
        target: "Object",
        stat: !0,
        forced: Object.assign !== Yi
    }, {
        assign: Yi
    });
    var Qi = Math.floor,
        Zi = A("".charAt),
        to = A("".replace),
        eo = A("".slice),
        no = /\$([$&'`]|\d{1,2}|<[^>]*>)/g,
        io = /\$([$&'`]|\d{1,2})/g,
        oo = function(t, e, n, i, o, r) {
            var a = n + t.length,
                s = i.length,
                l = io;
            return void 0 !== o && (o = ct(o), l = no), to(r, l, (function(r, l) {
                var c;
                switch (Zi(l, 0)) {
                    case "$":
                        return "$";
                    case "&":
                        return t;
                    case "`":
                        return eo(e, 0, n);
                    case "'":
                        return eo(e, a);
                    case "<":
                        c = o[eo(l, 1, -1)];
                        break;
                    default:
                        var u = +l;
                        if (0 === u) return r;
                        if (u > s) {
                            var h = Qi(u / 10);
                            return 0 === h ? r : h <= s ? void 0 === i[h - 1] ? Zi(l, 1) : i[h - 1] + Zi(l, 1) : r
                        }
                        c = i[u - 1]
                }
                return void 0 === c ? "" : c
            }))
        },
        ro = wt("replace"),
        ao = Math.max,
        so = Math.min,
        lo = A([].concat),
        co = A([].push),
        uo = A("".indexOf),
        ho = A("".slice),
        fo = "$0" === "a".replace(/./, "$0"),
        po = !!/./ [ro] && "" === /./ [ro]("a", "$0");

    function go(t, e) {
        if (t instanceof SVGElement) {
            var n = t.getAttribute("class") || "";
            t.setAttribute("class", n.replace(e, "")
                .replace(/^\s+|\s+$/g, ""))
        } else t.className = t.className.replace(e, "")
            .replace(/^\s+|\s+$/g, "")
    }

    function vo(t, e) {
        var n = "";
        if (t.style.cssText && (n += t.style.cssText), "string" == typeof e) n += e;
        else
            for (var i in e) n += "".concat(i, ":")
                .concat(e[i], ";");
        t.style.cssText = n
    }

    function mo(t) {
        if (t) {
            if (!this._introItems[this._currentStep]) return;
            var e = this._introItems[this._currentStep],
                n = Ji(e.element, this._targetElement),
                i = this._options.helperElementPadding;
            Xi(e.element) ? Di(t, "introjs-fixedTooltip") : go(t, "introjs-fixedTooltip"), "floating" === e.position && (i = 0), vo(t, {
                width: "".concat(n.width + i, "px"),
                height: "".concat(n.height + i, "px"),
                top: "".concat(n.top - i / 2, "px"),
                left: "".concat(n.left - i / 2, "px")
            })
        }
    }
    Pn("replace", (function(t, e, n) {
        var i = po ? "$" : "$0";
        return [function(t, n) {
            var i = P(this),
                o = null == t ? void 0 : et(t, ro);
            return o ? m(o, t, i, n) : m(e, Je(i), t, n)
        }, function(t, o) {
            var r = Pt(this),
                a = Je(t);
            if ("string" == typeof o && -1 === uo(o, i) && -1 === uo(o, "$<")) {
                var s = n(e, r, a, o);
                if (s.done) return s.value
            }
            var l = M(o);
            l || (o = Je(o));
            var c = r.global;
            if (c) {
                var u = r.unicode;
                r.lastIndex = 0
            }
            for (var h = [];;) {
                var f = $n(r, a);
                if (null === f) break;
                if (co(h, f), !c) break;
                "" === Je(f[0]) && (r.lastIndex = Dn(a, we(r.lastIndex), u))
            }
            for (var p, d = "", g = 0, v = 0; v < h.length; v++) {
                for (var m = Je((f = h[v])[0]), b = ao(so(ge(f.index), a.length), 0), y = [], w = 1; w < f.length; w++) co(y, void 0 === (p = f[w]) ? p : String(p));
                var _ = f.groups;
                if (l) {
                    var S = lo([m], y, b, a);
                    void 0 !== _ && co(S, _);
                    var x = Je(xi(o, void 0, S))
                } else x = oo(m, a, b, y, _, o);
                b >= g && (d += ho(a, g, b) + x, g = b + m.length)
            }
            return d + ho(a, g)
        }]
    }), !!p((function() {
        var t = /./;
        return t.exec = function() {
            var t = [];
            return t.groups = {
                a: "7"
            }, t
        }, "7" !== "".replace(t, "$<a>")
    })) || !fo || po);
    var bo = wt("unscopables"),
        yo = Array.prototype;
    null == yo[bo] && Ft.f(yo, bo, {
        configurable: !0,
        value: gn(null)
    });
    var wo, _o = xe.includes;
    $e({
        target: "Array",
        proto: !0
    }, {
        includes: function(t) {
            return _o(this, t, arguments.length > 1 ? arguments[1] : void 0)
        }
    }), wo = "includes", yo[bo][wo] = !0;
    var So = A([].slice),
        xo = oi("slice"),
        jo = wt("species"),
        Co = f.Array,
        Ao = Math.max;
    $e({
        target: "Array",
        proto: !0,
        forced: !xo
    }, {
        slice: function(t, e) {
            var n, i, o, r = R(this),
                a = _e(r),
                s = be(t, a),
                l = be(void 0 === e ? a : e, a);
            if (Gn(r) && (n = r.constructor, (Zn(n) && (n === Co || Gn(n.prototype)) || q(n) && null === (n = n[jo])) && (n = void 0), n === Co || void 0 === n)) return So(r, s, l);
            for (i = new(void 0 === n ? Co : n)(Ao(l - s, 0)), o = 0; s < l; s++, o++) s in r && Vn(i, o, r[s]);
            return i.length = o, i
        }
    });
    var ko = f.TypeError,
        Eo = function(t) {
            if (Ci(t)) throw ko("The method doesn't accept regular expressions");
            return t
        },
        To = wt("match"),
        Io = A("".indexOf);
    $e({
        target: "String",
        proto: !0,
        forced: ! function(t) {
            var e = /./;
            try {
                "/./" [t](e)
            } catch (n) {
                try {
                    return e[To] = !1, "/./" [t](e)
                } catch (t) {}
            }
            return !1
        }("includes")
    }, {
        includes: function(t) {
            return !!~Io(Je(P(this)), Je(Eo(t)), arguments.length > 1 ? arguments[1] : void 0)
        }
    });
    var No = function(t, e) {
            var n = [][t];
            return !!n && p((function() {
                n.call(null, e || function() {
                    return 1
                }, 1)
            }))
        },
        Lo = A([].join),
        Oo = L != Object,
        Po = No("join", ",");
    $e({
        target: "Array",
        proto: !0,
        forced: Oo || !Po
    }, {
        join: function(t) {
            return Lo(R(this), void 0 === t ? "," : t)
        }
    });
    var Ro = A(A.bind),
        Mo = A([].push),
        qo = function(t) {
            var e = 1 == t,
                n = 2 == t,
                i = 3 == t,
                o = 4 == t,
                r = 6 == t,
                a = 7 == t,
                s = 5 == t || r;
            return function(l, c, u, h) {
                for (var f, p, d = ct(l), v = L(d), m = function(t, e) {
                    return tt(t), void 0 === e ? t : g ? Ro(t, e) : function() {
                        return t.apply(e, arguments)
                    }
                }(c, u), b = _e(v), y = 0, w = h || ni, _ = e ? w(l, b) : n || a ? w(l, 0) : void 0; b > y; y++)
                    if ((s || y in v) && (p = m(f = v[y], y, d), t))
                        if (e) _[y] = p;
                        else if (p) switch (t) {
                            case 3:
                                return !0;
                            case 5:
                                return f;
                            case 6:
                                return y;
                            case 2:
                                Mo(_, f)
                        } else switch (t) {
                            case 4:
                                return !1;
                            case 7:
                                Mo(_, f)
                        }
                return r ? -1 : i || o ? o : _
            }
        },
        Bo = {
            forEach: qo(0),
            map: qo(1),
            filter: qo(2),
            some: qo(3),
            every: qo(4),
            find: qo(5),
            findIndex: qo(6),
            filterReject: qo(7)
        },
        Ho = Bo.filter;

    function Do(t, e, n, i, o) {
        return t.left + e + n.width > i.width ? (o.style.left = "".concat(i.width - n.width - t.left, "px"), !1) : (o.style.left = "".concat(e, "px"), !0)
    }

    function Fo(t, e, n, i) {
        return t.left + t.width - e - n.width < 0 ? (i.style.left = "".concat(-t.left, "px"), !1) : (i.style.right = "".concat(e, "px"), !0)
    }
    $e({
        target: "Array",
        proto: !0,
        forced: !oi("filter")
    }, {
        filter: function(t) {
            return Ho(this, t, arguments.length > 1 ? arguments[1] : void 0)
        }
    });
    var $o = oi("splice"),
        Go = f.TypeError,
        Vo = Math.max,
        zo = Math.min,
        Uo = 9007199254740991,
        Wo = "Maximum allowed length exceeded";

    function Ko(t, e) {
        t.includes(e) && t.splice(t.indexOf(e), 1)
    }

    function Yo(t, e, n) {
        var i = this._options.positionPrecedence.slice(),
            o = Gi(),
            r = Ji(e)
                .height + 10,
            a = Ji(e)
                .width + 20,
            s = t.getBoundingClientRect(),
            l = "floating";
        s.bottom + r > o.height && Ko(i, "bottom"), s.top - r < 0 && Ko(i, "top"), s.right + a > o.width && Ko(i, "right"), s.left - a < 0 && Ko(i, "left");
        var c, u, h = -1 !== (u = (c = n || "")
            .indexOf("-")) ? c.substr(u) : "";
        return n && (n = n.split("-")[0]), i.length && (l = i.includes(n) ? n : i[0]), ["top", "bottom"].includes(l) && (l += function(t, e, n, i) {
            var o = n.width,
                r = e / 2,
                a = Math.min(o, window.screen.width),
                s = ["-left-aligned", "-middle-aligned", "-right-aligned"];
            return a - t < e && Ko(s, "-left-aligned"), (t < r || a - t < r) && Ko(s, "-middle-aligned"), t < e && Ko(s, "-right-aligned"), s.length ? s.includes(i) ? i : s[0] : "-middle-aligned"
        }(s.left, a, o, h)), l
    }

    function Xo(t, e, n, i) {
        var o, r, a, s, l, c = "";
        if (i = i || !1, e.style.top = null, e.style.right = null, e.style.bottom = null, e.style.left = null, e.style.marginLeft = null, e.style.marginTop = null, n.style.display = "inherit", this._introItems[this._currentStep]) switch (c = "string" == typeof(o = this._introItems[this._currentStep])
            .tooltipClass ? o.tooltipClass : this._options.tooltipClass, e.className = ["introjs-tooltip", c].filter(Boolean)
            .join(" "), e.setAttribute("role", "dialog"), "floating" !== (l = this._introItems[this._currentStep].position) && this._options.autoPosition && (l = Yo.call(this, t, e, l)), a = Ji(t), r = Ji(e), s = Gi(), Di(e, "introjs-".concat(l)), l) {
            case "top-right-aligned":
                n.className = "introjs-arrow bottom-right";
                var u = 0;
                Fo(a, u, r, e), e.style.bottom = "".concat(a.height + 20, "px");
                break;
            case "top-middle-aligned":
                n.className = "introjs-arrow bottom-middle";
                var h = a.width / 2 - r.width / 2;
                i && (h += 5), Fo(a, h, r, e) && (e.style.right = null, Do(a, h, r, s, e)), e.style.bottom = "".concat(a.height + 20, "px");
                break;
            case "top-left-aligned":
            case "top":
                n.className = "introjs-arrow bottom", Do(a, i ? 0 : 15, r, s, e), e.style.bottom = "".concat(a.height + 20, "px");
                break;
            case "right":
                e.style.left = "".concat(a.width + 20, "px"), a.top + r.height > s.height ? (n.className = "introjs-arrow left-bottom", e.style.top = "-".concat(r.height - a.height - 20, "px")) : n.className = "introjs-arrow left";
                break;
            case "left":
                i || !0 !== this._options.showStepNumbers || (e.style.top = "15px"), a.top + r.height > s.height ? (e.style.top = "-".concat(r.height - a.height - 20, "px"), n.className = "introjs-arrow right-bottom") : n.className = "introjs-arrow right", e.style.right = "".concat(a.width + 20, "px");
                break;
            case "floating":
                n.style.display = "none", e.style.left = "50%", e.style.top = "50%", e.style.marginLeft = "-".concat(r.width / 2, "px"), e.style.marginTop = "-".concat(r.height / 2, "px");
                break;
            case "bottom-right-aligned":
                n.className = "introjs-arrow top-right", Fo(a, u = 0, r, e), e.style.top = "".concat(a.height + 20, "px");
                break;
            case "bottom-middle-aligned":
                n.className = "introjs-arrow top-middle", h = a.width / 2 - r.width / 2, i && (h += 5), Fo(a, h, r, e) && (e.style.right = null, Do(a, h, r, s, e)), e.style.top = "".concat(a.height + 20, "px");
                break;
            default:
                n.className = "introjs-arrow top", Do(a, 0, r, s, e), e.style.top = "".concat(a.height + 20, "px")
        }
    }

    function Jo() {
        r(document.querySelectorAll(".introjs-showElement"), (function(t) {
            go(t, /introjs-[a-zA-Z]+/g)
        }))
    }

    function Qo(t, e) {
        var n = document.createElement(t);
        e = e || {};
        var i = /^(?:role|data-|aria-)/;
        for (var o in e) {
            var r = e[o];
            "style" === o ? vo(n, r) : o.match(i) ? n.setAttribute(o, r) : n[o] = r
        }
        return n
    }

    function Zo(t, e, n) {
        if (n) {
            var i = e.style.opacity || "1";
            vo(e, {
                opacity: "0"
            }), window.setTimeout((function() {
                vo(e, {
                    opacity: i
                })
            }), 10)
        }
        t.appendChild(e)
    }

    function tr() {
        return parseInt(this._currentStep + 1, 10) / this._introItems.length * 100
    }

    function er() {
        var t = document.querySelector(".introjs-disableInteraction");
        null === t && (t = Qo("div", {
            className: "introjs-disableInteraction"
        }), this._targetElement.appendChild(t)), mo.call(this, t)
    }

    function nr(t) {
        var e = this,
            n = Qo("div", {
                className: "introjs-bullets"
            });
        !1 === this._options.showBullets && (n.style.display = "none");
        var i = Qo("ul");
        i.setAttribute("role", "tablist");
        var o = function() {
            e.goToStep(this.getAttribute("data-step-number"))
        };
        return r(this._introItems, (function(e, n) {
            var r = e.step,
                a = Qo("li"),
                s = Qo("a");
            a.setAttribute("role", "presentation"), s.setAttribute("role", "tab"), s.onclick = o, n === t.step - 1 && (s.className = "active"), zi(s), s.innerHTML = "&nbsp;", s.setAttribute("data-step-number", r), a.appendChild(s), i.appendChild(a)
        })), n.appendChild(i), n
    }

    function ir(t, e) {
        if (this._options.showBullets) {
            var n = document.querySelector(".introjs-bullets");
            n && n.parentNode.replaceChild(nr.call(this, e), n)
        }
    }

    function or(t, e) {
        this._options.showBullets && (t.querySelector(".introjs-bullets li > a.active")
            .className = "", t.querySelector('.introjs-bullets li > a[data-step-number="'.concat(e.step, '"]'))
            .className = "active")
    }

    function rr() {
        var t = Qo("div");
        t.className = "introjs-progress", !1 === this._options.showProgress && (t.style.display = "none");
        var e = Qo("div", {
            className: "introjs-progressbar"
        });
        return this._options.progressBarAdditionalClass && (e.className += " " + this._options.progressBarAdditionalClass), e.setAttribute("role", "progress"), e.setAttribute("aria-valuemin", 0), e.setAttribute("aria-valuemax", 100), e.setAttribute("aria-valuenow", tr.call(this)), e.style.cssText = "width:".concat(tr.call(this), "%;"), t.appendChild(e), t
    }

    function ar(t) {
        t.querySelector(".introjs-progress .introjs-progressbar")
            .style.cssText = "width:".concat(tr.call(this), "%;"), t.querySelector(".introjs-progress .introjs-progressbar")
            .setAttribute("aria-valuenow", tr.call(this))
    }

    function sr(t) {
        var e = this;
        void 0 !== this._introChangeCallback && this._introChangeCallback.call(this, t.element);
        var n, i, o, r = this,
            a = document.querySelector(".introjs-helperLayer"),
            s = document.querySelector(".introjs-tooltipReferenceLayer"),
            l = "introjs-helperLayer";
        if ("string" == typeof t.highlightClass && (l += " ".concat(t.highlightClass)), "string" == typeof this._options.highlightClass && (l += " ".concat(this._options.highlightClass)), null !== a && null !== s) {
            var c = s.querySelector(".introjs-helperNumberLayer"),
                u = s.querySelector(".introjs-tooltiptext"),
                h = s.querySelector(".introjs-tooltip-title"),
                f = s.querySelector(".introjs-arrow"),
                p = s.querySelector(".introjs-tooltip");
            o = s.querySelector(".introjs-skipbutton"), i = s.querySelector(".introjs-prevbutton"), n = s.querySelector(".introjs-nextbutton"), a.className = l, p.style.opacity = 0, p.style.display = "none", $i.call(r, t), mo.call(r, a), mo.call(r, s), Jo(), r._lastShowElementTimer && window.clearTimeout(r._lastShowElementTimer), r._lastShowElementTimer = window.setTimeout((function() {
                null !== c && (c.innerHTML = "".concat(t.step, " ")
                    .concat(e._options.stepNumbersOfLabel, " ")
                    .concat(e._introItems.length)), u.innerHTML = t.intro, h.innerHTML = t.title, p.style.display = "block", Xo.call(r, t.element, p, f), or.call(r, s, t), ar.call(r, s), p.style.opacity = 1, (null != n && /introjs-donebutton/gi.test(n.className) || null != n) && n.focus(), Vi.call(r, t.scrollTo, t, u)
            }), 350)
        } else {
            var d = Qo("div", {
                    className: l
                }),
                g = Qo("div", {
                    className: "introjs-tooltipReferenceLayer"
                }),
                v = Qo("div", {
                    className: "introjs-arrow"
                }),
                m = Qo("div", {
                    className: "introjs-tooltip"
                }),
                b = Qo("div", {
                    className: "introjs-tooltiptext"
                }),
                y = Qo("div", {
                    className: "introjs-tooltip-header"
                }),
                w = Qo("h1", {
                    className: "introjs-tooltip-title"
                }),
                _ = Qo("div");
            if (vo(d, {
                "box-shadow": "0 0 1px 2px rgba(195, 98, 98, 0.8), rgba(33, 33, 33, ".concat(r._options.overlayOpacity.toString(), ") 0 0 0 5000px")
            }), $i.call(r, t), mo.call(r, d), mo.call(r, g), Zo(this._targetElement, d, !0), Zo(this._targetElement, g), b.innerHTML = t.intro, w.innerHTML = t.title, _.className = "introjs-tooltipbuttons", !1 === this._options.showButtons && (_.style.display = "none"), y.appendChild(w), m.appendChild(y), m.appendChild(b), this._options.dontShowAgain) {
                var S = Qo("div", {
                        className: "introjs-dontShowAgain"
                    }),
                    x = Qo("input", {
                        type: "checkbox",
                        id: "introjs-dontShowAgain",
                        name: "introjs-dontShowAgain"
                    });
                x.onchange = function(t) {
                    e.setDontShowAgain(t.target.checked)
                };
                var j = Qo("label", {
                    htmlFor: "introjs-dontShowAgain"
                });
                j.innerText = this._options.dontShowAgainLabel, S.appendChild(x), S.appendChild(j), m.appendChild(S)
            }
            m.appendChild(nr.call(this, t)), m.appendChild(rr.call(this));
            var C = Qo("div");
            !0 === this._options.showStepNumbers && (C.className = "introjs-helperNumberLayer", C.innerHTML = "".concat(t.step, " ")
                .concat(this._options.stepNumbersOfLabel, " ")
                .concat(this._introItems.length), m.appendChild(C)), m.appendChild(v), g.appendChild(m), (n = Qo("a"))
                .onclick = function() {
                r._introItems.length - 1 !== r._currentStep ? ur.call(r) : /introjs-donebutton/gi.test(n.className) && ("function" == typeof r._introCompleteCallback && r._introCompleteCallback.call(r, r._currentStep, "done"), Yr.call(r, r._targetElement))
            }, zi(n), n.innerHTML = this._options.nextLabel, (i = Qo("a"))
                .onclick = function() {
                0 !== r._currentStep && hr.call(r)
            }, zi(i), i.innerHTML = this._options.prevLabel, zi(o = Qo("a", {
                className: "introjs-skipbutton"
            })), o.innerHTML = this._options.skipLabel, o.onclick = function() {
                r._introItems.length - 1 === r._currentStep && "function" == typeof r._introCompleteCallback && r._introCompleteCallback.call(r, r._currentStep, "skip"), "function" == typeof r._introSkipCallback && r._introSkipCallback.call(r), Yr.call(r, r._targetElement)
            }, y.appendChild(o), this._introItems.length > 1 && _.appendChild(i), _.appendChild(n), m.appendChild(_), Xo.call(r, t.element, m, v), Vi.call(this, t.scrollTo, t, m)
        }
        var A = r._targetElement.querySelector(".introjs-disableInteraction");
        A && A.parentNode.removeChild(A), t.disableInteraction && er.call(r), 0 === this._currentStep && this._introItems.length > 1 ? (null != n && (n.className = "".concat(this._options.buttonClass, " introjs-nextbutton"), n.innerHTML = this._options.nextLabel), !0 === this._options.hidePrev ? (null != i && (i.className = "".concat(this._options.buttonClass, " introjs-prevbutton introjs-hidden")), null != n && Di(n, "introjs-fullbutton")) : null != i && (i.className = "".concat(this._options.buttonClass, " introjs-prevbutton introjs-disabled"))) : this._introItems.length - 1 === this._currentStep || 1 === this._introItems.length ? (null != i && (i.className = "".concat(this._options.buttonClass, " introjs-prevbutton")), !0 === this._options.hideNext ? (null != n && (n.className = "".concat(this._options.buttonClass, " introjs-nextbutton introjs-hidden")), null != i && Di(i, "introjs-fullbutton")) : null != n && (!0 === this._options.nextToDone ? (n.innerHTML = this._options.doneLabel, Di(n, "".concat(this._options.buttonClass, " introjs-nextbutton introjs-donebutton"))) : n.className = "".concat(this._options.buttonClass, " introjs-nextbutton introjs-disabled"))) : (null != i && (i.className = "".concat(this._options.buttonClass, " introjs-prevbutton")), null != n && (n.className = "".concat(this._options.buttonClass, " introjs-nextbutton"), n.innerHTML = this._options.nextLabel)), null != i && i.setAttribute("role", "button"), null != n && n.setAttribute("role", "button"), null != o && o.setAttribute("role", "button"), null != n && n.focus(),
            function(t) {
                var e = t.element;
                Di(e, "introjs-showElement");
                var n = Fi(e, "position");
                "absolute" !== n && "relative" !== n && "sticky" !== n && "fixed" !== n && Di(e, "introjs-relativePosition")
            }(t), void 0 !== this._introAfterChangeCallback && this._introAfterChangeCallback.call(this, t.element)
    }

    function lr(t) {
        this._currentStep = t - 2, void 0 !== this._introItems && ur.call(this)
    }

    function cr(t) {
        this._currentStepNumber = t, void 0 !== this._introItems && ur.call(this)
    }

    function ur() {
        var t = this;
        this._direction = "forward", void 0 !== this._currentStepNumber && r(this._introItems, (function(e, n) {
            e.step === t._currentStepNumber && (t._currentStep = n - 1, t._currentStepNumber = void 0)
        })), void 0 === this._currentStep ? this._currentStep = 0 : ++this._currentStep;
        var e = this._introItems[this._currentStep],
            n = !0;
        return void 0 !== this._introBeforeChangeCallback && (n = this._introBeforeChangeCallback.call(this, e && e.element)), !1 === n ? (--this._currentStep, !1) : this._introItems.length <= this._currentStep ? ("function" == typeof this._introCompleteCallback && this._introCompleteCallback.call(this, this._currentStep, "end"), void Yr.call(this, this._targetElement)) : void sr.call(this, e)
    }

    function hr() {
        if (this._direction = "backward", 0 === this._currentStep) return !1;
        --this._currentStep;
        var t = this._introItems[this._currentStep],
            e = !0;
        if (void 0 !== this._introBeforeChangeCallback && (e = this._introBeforeChangeCallback.call(this, t && t.element)), !1 === e) return ++this._currentStep, !1;
        sr.call(this, t)
    }

    function fr() {
        return this._currentStep
    }

    function pr(t) {
        var e = void 0 === t.code ? t.which : t.code;
        if (null === e && (e = null === t.charCode ? t.keyCode : t.charCode), "Escape" !== e && 27 !== e || !0 !== this._options.exitOnEsc) {
            if ("ArrowLeft" === e || 37 === e) hr.call(this);
            else if ("ArrowRight" === e || 39 === e) ur.call(this);
            else if ("Enter" === e || "NumpadEnter" === e || 13 === e) {
                var n = t.target || t.srcElement;
                n && n.className.match("introjs-prevbutton") ? hr.call(this) : n && n.className.match("introjs-skipbutton") ? (this._introItems.length - 1 === this._currentStep && "function" == typeof this._introCompleteCallback && this._introCompleteCallback.call(this, this._currentStep, "skip"), Yr.call(this, this._targetElement)) : n && n.getAttribute("data-step-number") ? n.click() : ur.call(this), t.preventDefault ? t.preventDefault() : t.returnValue = !1
            }
        } else Yr.call(this, this._targetElement)
    }

    function dr(e) {
        if (null === e || "object" !== t(e) || void 0 !== e.nodeType) return e;
        var n = {};
        for (var i in e) void 0 !== window.jQuery && e[i] instanceof window.jQuery ? n[i] = e[i] : n[i] = dr(e[i]);
        return n
    }

    function gr(t) {
        var e = document.querySelector(".introjs-hints");
        return e ? e.querySelectorAll(t) : []
    }

    function vr(t) {
        var e = gr('.introjs-hint[data-step="'.concat(t, '"]'))[0];
        Cr.call(this), e && Di(e, "introjs-hidehint"), void 0 !== this._hintCloseCallback && this._hintCloseCallback.call(this, t)
    }

    function mr() {
        var t = this;
        r(gr(".introjs-hint"), (function(e) {
            vr.call(t, e.getAttribute("data-step"))
        }))
    }

    function br() {
        var t = this,
            e = gr(".introjs-hint");
        e && e.length ? r(e, (function(e) {
            yr.call(t, e.getAttribute("data-step"))
        })) : Ar.call(this, this._targetElement)
    }

    function yr(t) {
        var e = gr('.introjs-hint[data-step="'.concat(t, '"]'))[0];
        e && go(e, /introjs-hidehint/g)
    }

    function wr() {
        var t = this;
        r(gr(".introjs-hint"), (function(e) {
            _r.call(t, e.getAttribute("data-step"))
        })), a.off(document, "click", Cr, this, !1), a.off(window, "resize", kr, this, !0), this._hintsAutoRefreshFunction && a.off(window, "scroll", this._hintsAutoRefreshFunction, this, !0)
    }

    function _r(t) {
        var e = gr('.introjs-hint[data-step="'.concat(t, '"]'))[0];
        e && e.parentNode.removeChild(e)
    }

    function Sr() {
        var t = this,
            e = this,
            n = document.querySelector(".introjs-hints");
        null === n && (n = Qo("div", {
            className: "introjs-hints"
        }));
        r(this._introItems, (function(i, o) {
            if (!document.querySelector('.introjs-hint[data-step="'.concat(o, '"]'))) {
                var r = Qo("a", {
                    className: "introjs-hint"
                });
                zi(r), r.onclick = function(t) {
                    return function(n) {
                        var i = n || window.event;
                        i.stopPropagation && i.stopPropagation(), null !== i.cancelBubble && (i.cancelBubble = !0), jr.call(e, t)
                    }
                }(o), i.hintAnimation || Di(r, "introjs-hint-no-anim"), Xi(i.element) && Di(r, "introjs-fixedhint");
                var a = Qo("div", {
                        className: "introjs-hint-dot"
                    }),
                    s = Qo("div", {
                        className: "introjs-hint-pulse"
                    });
                r.appendChild(a), r.appendChild(s), r.setAttribute("data-step", o), i.targetElement = i.element, i.element = r, xr.call(t, i.hintPosition, r, i.targetElement), n.appendChild(r)
            }
        })), document.body.appendChild(n), void 0 !== this._hintsAddedCallback && this._hintsAddedCallback.call(this), this._options.hintAutoRefreshInterval >= 0 && (this._hintsAutoRefreshFunction = function(t, e) {
            var n, i = this;
            return function() {
                for (var o = arguments.length, r = new Array(o), a = 0; a < o; a++) r[a] = arguments[a];
                clearTimeout(n), n = setTimeout((function() {
                    t.apply(i, r)
                }), e)
            }
        }((function() {
            return kr.call(t)
        }), this._options.hintAutoRefreshInterval), a.on(window, "scroll", this._hintsAutoRefreshFunction, this, !0))
    }

    function xr(t, e, n) {
        var i = e.style,
            o = Ji.call(this, n),
            r = 20,
            a = 20;
        switch (t) {
            default:
                i.left = "".concat(o.left, "px"), i.top = "".concat(o.top, "px");
                break;
            case "top-right":
                i.left = "".concat(o.left + o.width - r, "px"), i.top = "".concat(o.top, "px");
                break;
            case "bottom-left":
                i.left = "".concat(o.left, "px"), i.top = "".concat(o.top + o.height - a, "px");
                break;
            case "bottom-right":
                i.left = "".concat(o.left + o.width - r, "px"), i.top = "".concat(o.top + o.height - a, "px");
                break;
            case "middle-left":
                i.left = "".concat(o.left, "px"), i.top = "".concat(o.top + (o.height - a) / 2, "px");
                break;
            case "middle-right":
                i.left = "".concat(o.left + o.width - r, "px"), i.top = "".concat(o.top + (o.height - a) / 2, "px");
                break;
            case "middle-middle":
                i.left = "".concat(o.left + (o.width - r) / 2, "px"), i.top = "".concat(o.top + (o.height - a) / 2, "px");
                break;
            case "bottom-middle":
                i.left = "".concat(o.left + (o.width - r) / 2, "px"), i.top = "".concat(o.top + o.height - a, "px");
                break;
            case "top-middle":
                i.left = "".concat(o.left + (o.width - r) / 2, "px"), i.top = "".concat(o.top, "px")
        }
    }

    function jr(t) {
        var e = document.querySelector('.introjs-hint[data-step="'.concat(t, '"]')),
            n = this._introItems[t];
        void 0 !== this._hintClickCallback && this._hintClickCallback.call(this, e, n, t);
        var i = Cr.call(this);
        if (parseInt(i, 10) !== t) {
            var o = Qo("div", {
                    className: "introjs-tooltip"
                }),
                r = Qo("div"),
                a = Qo("div"),
                s = Qo("div");
            o.onclick = function(t) {
                t.stopPropagation ? t.stopPropagation() : t.cancelBubble = !0
            }, r.className = "introjs-tooltiptext";
            var l = Qo("p");
            if (l.innerHTML = n.hint, r.appendChild(l), this._options.hintShowButton) {
                var c = Qo("a");
                c.className = this._options.buttonClass, c.setAttribute("role", "button"), c.innerHTML = this._options.hintButtonLabel, c.onclick = vr.bind(this, t), r.appendChild(c)
            }
            a.className = "introjs-arrow", o.appendChild(a), o.appendChild(r), this._currentStep = e.getAttribute("data-step"), s.className = "introjs-tooltipReferenceLayer introjs-hintReference", s.setAttribute("data-step", e.getAttribute("data-step")), mo.call(this, s), s.appendChild(o), document.body.appendChild(s), Xo.call(this, e, o, a, !0)
        }
    }

    function Cr() {
        var t = document.querySelector(".introjs-hintReference");
        if (t) {
            var e = t.getAttribute("data-step");
            return t.parentNode.removeChild(t), e
        }
    }

    function Ar(t) {
        var e = this;
        if (this._introItems = [], this._options.hints) r(this._options.hints, (function(t) {
            var n = dr(t);
            "string" == typeof n.element && (n.element = document.querySelector(n.element)), n.hintPosition = n.hintPosition || e._options.hintPosition, n.hintAnimation = n.hintAnimation || e._options.hintAnimation, null !== n.element && e._introItems.push(n)
        }));
        else {
            var n = t.querySelectorAll("*[data-hint]");
            if (!n || !n.length) return !1;
            r(n, (function(t) {
                var n = t.getAttribute("data-hint-animation");
                n = n ? "true" === n : e._options.hintAnimation, e._introItems.push({
                    element: t,
                    hint: t.getAttribute("data-hint"),
                    hintPosition: t.getAttribute("data-hint-position") || e._options.hintPosition,
                    hintAnimation: n,
                    tooltipClass: t.getAttribute("data-tooltip-class"),
                    position: t.getAttribute("data-position") || e._options.tooltipPosition
                })
            }))
        }
        Sr.call(this), a.on(document, "click", Cr, this, !1), a.on(window, "resize", kr, this, !0)
    }

    function kr() {
        var t = this;
        r(this._introItems, (function(e) {
            var n = e.targetElement,
                i = e.hintPosition,
                o = e.element;
            void 0 !== n && xr.call(t, i, o, n)
        }))
    }
    $e({
        target: "Array",
        proto: !0,
        forced: !$o
    }, {
        splice: function(t, e) {
            var n, i, o, r, a, s, l = ct(this),
                c = _e(l),
                u = be(t, c),
                h = arguments.length;
            if (0 === h ? n = i = 0 : 1 === h ? (n = 0, i = c - u) : (n = h - 2, i = zo(Vo(ge(e), 0), c - u)), c + n - i > Uo) throw Go(Wo);
            for (o = ni(l, i), r = 0; r < i; r++)(a = u + r) in l && Vn(o, r, l[a]);
            if (o.length = i, n < i) {
                for (r = u; r < c - i; r++) s = r + n, (a = r + i) in l ? l[s] = l[a] : delete l[s];
                for (r = c; r > c - i + n; r--) delete l[r - 1]
            } else if (n > i)
                for (r = c - i; r > u; r--) s = r + n - 1, (a = r + i - 1) in l ? l[s] = l[a] : delete l[s];
            for (r = 0; r < n; r++) l[r + u] = arguments[r + 2];
            return l.length = c - i + n, o
        }
    });
    var Er = Math.floor,
        Tr = function(t, e) {
            var n = t.length,
                i = Er(n / 2);
            return n < 8 ? Ir(t, e) : Nr(t, Tr(Ni(t, 0, i), e), Tr(Ni(t, i), e), e)
        },
        Ir = function(t, e) {
            for (var n, i, o = t.length, r = 1; r < o;) {
                for (i = r, n = t[r]; i && e(t[i - 1], n) > 0;) t[i] = t[--i];
                i !== r++ && (t[i] = n)
            }
            return t
        },
        Nr = function(t, e, n, i) {
            for (var o = e.length, r = n.length, a = 0, s = 0; a < o || s < r;) t[a + s] = a < o && s < r ? i(e[a], n[s]) <= 0 ? e[a++] : n[s++] : a < o ? e[a++] : n[s++];
            return t
        },
        Lr = Tr,
        Or = F.match(/firefox\/(\d+)/i),
        Pr = !!Or && +Or[1],
        Rr = /MSIE|Trident/.test(F),
        Mr = F.match(/AppleWebKit\/(\d+)\./),
        qr = !!Mr && +Mr[1],
        Br = [],
        Hr = A(Br.sort),
        Dr = A(Br.push),
        Fr = p((function() {
            Br.sort(void 0)
        })),
        $r = p((function() {
            Br.sort(null)
        })),
        Gr = No("sort"),
        Vr = !p((function() {
            if (U) return U < 70;
            if (!(Pr && Pr > 3)) {
                if (Rr) return !0;
                if (qr) return qr < 603;
                var t, e, n, i, o = "";
                for (t = 65; t < 76; t++) {
                    switch (e = String.fromCharCode(t), t) {
                        case 66:
                        case 69:
                        case 70:
                        case 72:
                            n = 3;
                            break;
                        case 68:
                        case 71:
                            n = 4;
                            break;
                        default:
                            n = 2
                    }
                    for (i = 0; i < 47; i++) Br.push({
                        k: e + i,
                        v: n
                    })
                }
                for (Br.sort((function(t, e) {
                    return e.v - t.v
                })), i = 0; i < Br.length; i++) e = Br[i].k.charAt(0), o.charAt(o.length - 1) !== e && (o += e);
                return "DGBEFHACIJK" !== o
            }
        }));

    function zr(t) {
        var e = this,
            n = t.querySelectorAll("*[data-intro]"),
            i = [];
        if (this._options.steps) r(this._options.steps, (function(t) {
            var n = dr(t);
            if (n.step = i.length + 1, n.title = n.title || "", "string" == typeof n.element && (n.element = document.querySelector(n.element)), void 0 === n.element || null === n.element) {
                var o = document.querySelector(".introjsFloatingElement");
                null === o && (o = Qo("div", {
                    className: "introjsFloatingElement"
                }), document.body.appendChild(o)), n.element = o, n.position = "floating"
            }
            n.position = n.position || e._options.tooltipPosition, n.scrollTo = n.scrollTo || e._options.scrollTo, void 0 === n.disableInteraction && (n.disableInteraction = e._options.disableInteraction), null !== n.element && i.push(n)
        }));
        else {
            var o;
            if (n.length < 1) return [];
            r(n, (function(t) {
                if ((!e._options.group || t.getAttribute("data-intro-group") === e._options.group) && "none" !== t.style.display) {
                    var n = parseInt(t.getAttribute("data-step"), 10);
                    o = t.hasAttribute("data-disable-interaction") ? !!t.getAttribute("data-disable-interaction") : e._options.disableInteraction, n > 0 && (i[n - 1] = {
                        element: t,
                        title: t.getAttribute("data-title") || "",
                        intro: t.getAttribute("data-intro"),
                        step: parseInt(t.getAttribute("data-step"), 10),
                        tooltipClass: t.getAttribute("data-tooltip-class"),
                        highlightClass: t.getAttribute("data-highlight-class"),
                        position: t.getAttribute("data-position") || e._options.tooltipPosition,
                        scrollTo: t.getAttribute("data-scroll-to") || e._options.scrollTo,
                        disableInteraction: o
                    })
                }
            }));
            var a = 0;
            r(n, (function(t) {
                if ((!e._options.group || t.getAttribute("data-intro-group") === e._options.group) && null === t.getAttribute("data-step")) {
                    for (; void 0 !== i[a];) a++;
                    o = t.hasAttribute("data-disable-interaction") ? !!t.getAttribute("data-disable-interaction") : e._options.disableInteraction, i[a] = {
                        element: t,
                        title: t.getAttribute("data-title") || "",
                        intro: t.getAttribute("data-intro"),
                        step: a + 1,
                        tooltipClass: t.getAttribute("data-tooltip-class"),
                        highlightClass: t.getAttribute("data-highlight-class"),
                        position: t.getAttribute("data-position") || e._options.tooltipPosition,
                        scrollTo: t.getAttribute("data-scroll-to") || e._options.scrollTo,
                        disableInteraction: o
                    }
                }
            }))
        }
        for (var s = [], l = 0; l < i.length; l++) i[l] && s.push(i[l]);
        return (i = s)
            .sort((function(t, e) {
                return t.step - e.step
            })), i
    }

    function Ur(t) {
        var e = document.querySelector(".introjs-tooltipReferenceLayer"),
            n = document.querySelector(".introjs-helperLayer"),
            i = document.querySelector(".introjs-disableInteraction");
        if (mo.call(this, n), mo.call(this, e), mo.call(this, i), t && (this._introItems = zr.call(this, this._targetElement), ir.call(this, e, this._introItems[this._currentStep]), ar.call(this, e)), void 0 !== this._currentStep && null !== this._currentStep) {
            var o = document.querySelector(".introjs-arrow"),
                r = document.querySelector(".introjs-tooltip");
            r && o && Xo.call(this, this._introItems[this._currentStep].element, r, o)
        }
        return kr.call(this), this
    }

    function Wr() {
        Ur.call(this)
    }

    function Kr(t, e) {
        if (t && t.parentElement) {
            var n = t.parentElement;
            e ? (vo(t, {
                opacity: "0"
            }), window.setTimeout((function() {
                try {
                    n.removeChild(t)
                } catch (t) {}
            }), 500)) : n.removeChild(t)
        }
    }

    function Yr(t, e) {
        var n = !0;
        if (void 0 !== this._introBeforeExitCallback && (n = this._introBeforeExitCallback.call(this)), e || !1 !== n) {
            var i = t.querySelectorAll(".introjs-overlay");
            i && i.length && r(i, (function(t) {
                return Kr(t)
            })), Kr(t.querySelector(".introjs-helperLayer"), !0), Kr(t.querySelector(".introjs-tooltipReferenceLayer")), Kr(t.querySelector(".introjs-disableInteraction")), Kr(document.querySelector(".introjsFloatingElement")), Jo(), a.off(window, "keydown", pr, this, !0), a.off(window, "resize", Wr, this, !0), void 0 !== this._introExitCallback && this._introExitCallback.call(this), this._currentStep = void 0
        }
    }

    function Xr(t) {
        var e = this,
            n = Qo("div", {
                className: "introjs-overlay"
            });
        return vo(n, {
            top: 0,
            bottom: 0,
            left: 0,
            right: 0,
            position: "fixed"
        }), t.appendChild(n), !0 === this._options.exitOnOverlayClick && (vo(n, {
            cursor: "pointer"
        }), n.onclick = function() {
            Yr.call(e, t)
        }), !0
    }

    function Jr(t) {
        if (this.isActive()) {
            void 0 !== this._introStartCallback && this._introStartCallback.call(this, t);
            var e = zr.call(this, t);
            return 0 === e.length || (this._introItems = e, Xr.call(this, t) && (ur.call(this), this._options.keyboardNavigation && a.on(window, "keydown", pr, this, !0), a.on(window, "resize", Wr, this, !0))), !1
        }
    }
    $e({
        target: "Array",
        proto: !0,
        forced: Fr || !$r || !Gr || !Vr
    }, {
        sort: function(t) {
            void 0 !== t && tt(t);
            var e = ct(this);
            if (Vr) return void 0 === t ? Hr(e) : Hr(e, t);
            var n, i, o = [],
                r = _e(e);
            for (i = 0; i < r; i++) i in e && Dr(o, e[i]);
            for (Lr(o, function(t) {
                return function(e, n) {
                    return void 0 === n ? -1 : void 0 === e ? 1 : void 0 !== t ? +t(e, n) || 0 : Je(e) > Je(n) ? 1 : -1
                }
            }(t)), n = o.length, i = 0; i < n;) e[i] = o[i++];
            for (; i < r;) delete e[i++];
            return e
        }
    });
    var Qr = {
            CSSRuleList: 0,
            CSSStyleDeclaration: 0,
            CSSValueList: 0,
            ClientRectList: 0,
            DOMRectList: 0,
            DOMStringList: 0,
            DOMTokenList: 1,
            DataTransferItemList: 0,
            FileList: 0,
            HTMLAllCollection: 0,
            HTMLCollection: 0,
            HTMLFormElement: 0,
            HTMLSelectElement: 0,
            MediaList: 0,
            MimeTypeArray: 0,
            NamedNodeMap: 0,
            NodeList: 1,
            PaintRequestList: 0,
            Plugin: 0,
            PluginArray: 0,
            SVGLengthList: 0,
            SVGNumberList: 0,
            SVGPathSegList: 0,
            SVGPointList: 0,
            SVGStringList: 0,
            SVGTransformList: 0,
            SourceBufferList: 0,
            StyleSheetList: 0,
            TextTrackCueList: 0,
            TextTrackList: 0,
            TouchList: 0
        },
        Zr = kt("span")
            .classList,
        ta = Zr && Zr.constructor && Zr.constructor.prototype,
        ea = ta === Object.prototype ? void 0 : ta,
        na = Bo.forEach,
        ia = No("forEach") ? [].forEach : function(t) {
            return na(this, t, arguments.length > 1 ? arguments[1] : void 0)
        },
        oa = function(t) {
            if (t && t.forEach !== ia) try {
                $t(t, "forEach", ia)
            } catch (e) {
                t.forEach = ia
            }
        };
    for (var ra in Qr) Qr[ra] && oa(f[ra] && f[ra].prototype);
    oa(ea);
    var aa, sa = "\t\n\v\f\r                　\u2028\u2029\ufeff",
        la = A("".replace),
        ca = "[" + sa + "]",
        ua = RegExp("^" + ca + ca + "*"),
        ha = RegExp(ca + ca + "*$"),
        fa = function(t) {
            return function(e) {
                var n = Je(P(e));
                return 1 & t && (n = la(n, ua, "")), 2 & t && (n = la(n, ha, "")), n
            }
        },
        pa = {
            start: fa(1),
            end: fa(2),
            trim: fa(3)
        },
        da = he.PROPER,
        ga = pa.trim;

    function va(t, n, i) {
        var o, r = (e(o = {}, t, n), e(o, "path", "/"), o);
        if (i) {
            var a = new Date;
            a.setTime(a.getTime() + 24 * i * 60 * 60 * 1e3), r.expires = a.toUTCString()
        }
        var s = [];
        for (var l in r) s.push("".concat(l, "=")
            .concat(r[l]));
        return document.cookie = s.join("; "), ma(t)
    }

    function ma(t) {
        return (e = {}, document.cookie.split(";")
            .forEach((function(t) {
                var i = n(t.split("="), 2),
                    o = i[0],
                    r = i[1];
                e[o.trim()] = r
            })), e)[t];
        var e
    }
    $e({
        target: "String",
        proto: !0,
        forced: (aa = "trim", p((function() {
            return !!sa[aa]() || "​᠎" !== "​᠎" [aa]() || da && sa[aa].name !== aa
        })))
    }, {
        trim: function() {
            return ga(this)
        }
    });
    var ba = "true";

    function ya(t) {
        t ? va(this._options.dontShowAgainCookie, ba, this._options.dontShowAgainCookieDays) : va(this._options.dontShowAgainCookie, "", -1)
    }

    function wa() {
        var t = ma(this._options.dontShowAgainCookie);
        return t && t === ba
    }

    function _a(t) {
        this._targetElement = t, this._introItems = [], this._options = {
            isActive: !0,
            nextLabel: "Next",
            prevLabel: "Back",
            skipLabel: "×",
            doneLabel: "Done",
            hidePrev: !1,
            hideNext: !1,
            nextToDone: !0,
            tooltipPosition: "bottom",
            tooltipClass: "",
            group: "",
            highlightClass: "",
            exitOnEsc: !0,
            exitOnOverlayClick: !0,
            showStepNumbers: !1,
            stepNumbersOfLabel: "of",
            keyboardNavigation: !0,
            showButtons: !0,
            showBullets: !0,
            showProgress: !1,
            scrollToElement: !0,
            scrollTo: "element",
            scrollPadding: 30,
            overlayOpacity: .5,
            autoPosition: !0,
            positionPrecedence: ["bottom", "top", "right", "left"],
            disableInteraction: !1,
            dontShowAgain: !1,
            dontShowAgainLabel: "Don't show this again",
            dontShowAgainCookie: "introjs-dontShowAgain",
            dontShowAgainCookieDays: 365,
            helperElementPadding: 10,
            hintPosition: "top-middle",
            hintButtonLabel: "Got it",
            hintShowButton: !0,
            hintAutoRefreshInterval: 10,
            hintAnimation: !0,
            buttonClass: "introjs-button",
            progressBarAdditionalClass: !1
        }
    }
    var Sa = function e(n) {
        var i;
        if ("object" === t(n)) i = new _a(n);
        else if ("string" == typeof n) {
            var r = document.querySelector(n);
            if (!r) throw new Error("There is no element with given selector.");
            i = new _a(r)
        } else i = new _a(document.body);
        return e.instances[o(i, "introjs-instance")] = i, i
    };
    return Sa.version = "5.1.0", Sa.instances = {}, Sa.fn = _a.prototype = {
        isActive: function() {
            return (!this._options.dontShowAgain || !wa.call(this)) && this._options.isActive
        },
        clone: function() {
            return new _a(this)
        },
        setOption: function(t, e) {
            return this._options[t] = e, this
        },
        setOptions: function(t) {
            return this._options = function(t, e) {
                var n, i = {};
                for (n in t) i[n] = t[n];
                for (n in e) i[n] = e[n];
                return i
            }(this._options, t), this
        },
        start: function() {
            return Jr.call(this, this._targetElement), this
        },
        goToStep: function(t) {
            return lr.call(this, t), this
        },
        addStep: function(t) {
            return this._options.steps || (this._options.steps = []), this._options.steps.push(t), this
        },
        addSteps: function(t) {
            if (t.length) {
                for (var e = 0; e < t.length; e++) this.addStep(t[e]);
                return this
            }
        },
        goToStepNumber: function(t) {
            return cr.call(this, t), this
        },
        nextStep: function() {
            return ur.call(this), this
        },
        previousStep: function() {
            return hr.call(this), this
        },
        currentStep: function() {
            return fr.call(this)
        },
        exit: function(t) {
            return Yr.call(this, this._targetElement, t), this
        },
        refresh: function(t) {
            return Ur.call(this, t), this
        },
        setDontShowAgain: function(t) {
            return ya.call(this, t), this
        },
        onbeforechange: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onbeforechange was not a function");
            return this._introBeforeChangeCallback = t, this
        },
        onchange: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onchange was not a function.");
            return this._introChangeCallback = t, this
        },
        onafterchange: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onafterchange was not a function");
            return this._introAfterChangeCallback = t, this
        },
        oncomplete: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for oncomplete was not a function.");
            return this._introCompleteCallback = t, this
        },
        onhintsadded: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onhintsadded was not a function.");
            return this._hintsAddedCallback = t, this
        },
        onhintclick: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onhintclick was not a function.");
            return this._hintClickCallback = t, this
        },
        onhintclose: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onhintclose was not a function.");
            return this._hintCloseCallback = t, this
        },
        onstart: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onstart was not a function.");
            return this._introStartCallback = t, this
        },
        onexit: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onexit was not a function.");
            return this._introExitCallback = t, this
        },
        onskip: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onskip was not a function.");
            return this._introSkipCallback = t, this
        },
        onbeforeexit: function(t) {
            if ("function" != typeof t) throw new Error("Provided callback for onbeforeexit was not a function.");
            return this._introBeforeExitCallback = t, this
        },
        addHints: function() {
            return Ar.call(this, this._targetElement), this
        },
        hideHint: function(t) {
            return vr.call(this, t), this
        },
        hideHints: function() {
            return mr.call(this), this
        },
        showHint: function(t) {
            return yr.call(this, t), this
        },
        showHints: function() {
            return br.call(this), this
        },
        removeHints: function() {
            return wr.call(this), this
        },
        removeHint: function(t) {
            return _r()
                .call(this, t), this
        },
        showHintDialog: function(t) {
            return jr.call(this, t), this
        }
    }, Sa
}));